package com.view;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

import javax.faces.bean.ManagedBean;
import javax.faces.bean.ViewScoped;
import javax.validation.constraints.DecimalMin;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;

@SuppressWarnings("serial")
@ManagedBean
@ViewScoped
public class PagoServicioView implements Serializable {

	private Long id;

	@NotNull(message = "Valor requerido")
	@DecimalMin(value = "0", message = "El valor minimo es 0")
	private BigDecimal monto;

	@NotNull(message = "Valor requerido")
	private Date fecha;

	@NotNull(message = "Valor requerido")
	private ClienteView clienteView;

	@Size(max = 150,message = "El comentario puede tener como maximo 150 caracteres")
	private String comentario;

	public PagoServicioView(Long id, BigDecimal monto, Date fecha,
			ClienteView clienteView, String comentario) {
		this.id = id;
		this.monto = monto;
		this.fecha = fecha;
		this.clienteView = clienteView;
		this.comentario = comentario;
	}

	public PagoServicioView() {
		this(null, null, null, null, null);
	}

	public Long getId() {
		return id;
	}

	public void setId(Long id) {
		this.id = id;
	}

	public BigDecimal getMonto() {
		return monto;
	}

	public void setMonto(BigDecimal monto) {
		this.monto = monto;
	}

	public Date getFecha() {
		return fecha;
	}

	public void setFecha(Date fecha) {
		this.fecha = fecha;
	}

	public ClienteView getClienteView() {
		return clienteView;
	}

	public void setClienteView(ClienteView clienteView) {
		this.clienteView = clienteView;
	}

	public String getComentario() {
		return comentario;
	}

	public void setComentario(String comentario) {
		this.comentario = comentario;
	}

}
